﻿/*
 * NavigationService
 *
 * Provide navigation service for application scope navigation
 * Specially for main windows tab navigation
 *
 * Quick implementation, full implementation will be finished in M3
 *
 */

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SNSpirit.Service.Navigation
{
    public class NavigationService
    {
        #region singleton

        private readonly static object _syncRoot = new object();

        private volatile static NavigationService _instance;

        public static NavigationService Current
        {
            get
            {
                if (_instance == null)
                    lock (_syncRoot)
                        if (_instance == null)
                            _instance = new NavigationService();
                return _instance;
            }
        }

        #endregion singleton

        private NavigationService()
        {
            // todo
        }

        public Session NavigateTo(object obj, NavigationMode mode = NavigationMode.CurrentSession)
        {
            throw new NotImplementedException();
        }
    }
}